/**
 * Array.copyWithin()方法用于在数组内的替换操作，即替换元素与被替换元素都是数组内的元素。
 * copyWithin(target, start[, end = this.length])有三个参数：
 * 参数一：被替换元素的起始位置在数组中的索引
 * 参数二：替换元素的起始位置在数组内的索引
 * 参数三：可选，替换元素结束位置在数组内的索引(省略则为数组长度)
 * 该方法在数组内复制从start(包含start)位置到end(不包含end)位置的一组元素覆盖到以target为开始位置的地方
 */
var array = [1, 2, 3, 4, 5]
//copyWithin(0,1)0被替换元素索引，1替换元素起始位置（就是从元素2开始到元素5，参数三省略则为数组长度）
var a = array.copyWithin(0, 1); //[2,3,4,5,5]
console.log(array)
var b = array.copyWithin(0, 1, 2)//[3,3,4,5,5]
console.log(b)

var c = [1, 2, 3, 4, 5].copyWithin(0, -2, -1);//[4,2,3,4,5]
console.log(c)

var d = [1, 2, 3, 4, 5].copyWithin(0, -3, -1);//[3,4,3,4,5]
console.log(d)